Telegram Group & Telegram Channel
🖥Hexi — это лёгкая, заголовочная библиотека на C++23, предназначенная для безопасной обработки бинарных данных из различных источников, особенно сетевых.

Библиотека предоставляет два ключевых класса: buffer_adaptor и binary_stream.

buffer_adaptor служит обёрткой для контейнеров, обеспечивая низкоуровневые операции чтения и записи, а binary_stream использует этот адаптер для выполнения операций сериализации и десериализации.

Hexi поддерживает работу с различными стандартными контейнерами, такими как std::array, std::span, std::string_view, std::string и std::vector, при условии, что их типы значений являются байтовыми (например, char, std::byte, uint8_t). ​


Для обеспечения безопасности при работе с недоверенными данными, binary_stream выполняет проверку границ, предотвращая чтение за пределами доступных данных.

По умолчанию, при возникновении ошибки выбрасываются исключения, однако их можно отключить, указав шаблонный аргумент no_throw. Состояние потока можно проверить с помощью метода state() или оператором приведения к bool. ​
Безопасность: Hexi выполняет проверку границ при чтении данных, предотвращая выход за пределы буфера. По умолчанию при ошибках выбрасываются исключения (hexi::buffer_underrun, hexi::stream_read_limit), но их можно отключить, указав шаблонный аргумент no_throw

🔗 Github
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/cpluspluc/1012
Create:
Last Update:

🖥Hexi — это лёгкая, заголовочная библиотека на C++23, предназначенная для безопасной обработки бинарных данных из различных источников, особенно сетевых.

Библиотека предоставляет два ключевых класса: buffer_adaptor и binary_stream.

buffer_adaptor служит обёрткой для контейнеров, обеспечивая низкоуровневые операции чтения и записи, а binary_stream использует этот адаптер для выполнения операций сериализации и десериализации.

Hexi поддерживает работу с различными стандартными контейнерами, такими как std::array, std::span, std::string_view, std::string и std::vector, при условии, что их типы значений являются байтовыми (например, char, std::byte, uint8_t). ​


Для обеспечения безопасности при работе с недоверенными данными, binary_stream выполняет проверку границ, предотвращая чтение за пределами доступных данных.

По умолчанию, при возникновении ошибки выбрасываются исключения, однако их можно отключить, указав шаблонный аргумент no_throw. Состояние потока можно проверить с помощью метода state() или оператором приведения к bool. ​
Безопасность: Hexi выполняет проверку границ при чтении данных, предотвращая выход за пределы буфера. По умолчанию при ошибках выбрасываются исключения (hexi::buffer_underrun, hexi::stream_read_limit), но их можно отключить, указав шаблонный аргумент no_throw

🔗 Github

BY C++ Academy




Share with your friend now:
tg-me.com/cpluspluc/1012

View MORE
Open in Telegram


C Academy Telegram | DID YOU KNOW?

Date: |

Launched in 2013, Telegram allows users to broadcast messages to a following via “channels”, or create public and private groups that are simple for others to access. Users can also send and receive large data files, including text and zip files, directly via the app.The platform said it has more than 500m active users, and topped 1bn downloads in August, according to data from SensorTower.

Mr. Durov launched Telegram in late 2013 with his brother, Nikolai, just months before he was pushed out of VK, the Russian social-media platform he founded. Mr. Durov pitched his new app—funded with the proceeds from the VK sale—less as a business than as a way for people to send messages while avoiding government surveillance and censorship.

C Academy from hk


Telegram C++ Academy
FROM USA